package com.yidu.action;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;
import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.yidu.comment.Message;
import com.yidu.comment.Page;
import com.yidu.model.SnBranch;
import com.yidu.model.SnComPurchase;
import com.yidu.model.SnUser;
import com.yidu.service.SumChaseService;


/**
 * 总公司财务action
 * @author wuqi
 * @date 2019年1月3日
 */
@Controller
@RequestMapping("/sumchase")
public class SumChaseAction {
	/**
	 * 注入采购表
	 */
	@Resource
	SumChaseService scs;
	
	/**
	 * 查询所有
	 * @param page 当前页数
	 * @param limit 每页多少行
	 * @param sc 条件
	 * @return map json格式
	 */
	@RequestMapping("SelectAll")
	@ResponseBody
	public Map<String,Object> SelectAll(String page,String limit,SnComPurchase scp){
		//得到分页工具类
		Page pages=new Page();
		//将数据封装   开始的行数和一页的数据
		pages.setCurPage(Integer.valueOf(page));
		pages.setRows(Integer.valueOf(limit));
		
		//创建一个map对象
		Map<String, Object> maps=new HashMap<>();
		maps.put("page", pages);
		maps.put("scp", scp);
		//调用条件查询的方法
		List<SnComPurchase> list = scs.SelectAll(maps);
		//调用查询行数的方法
		int count=scs.SelectAllCount(maps);
		//创建一个map
		Map<String, Object> map = new HashMap<>();
		map.put("code", 0);
		map.put("msg", 0);
		map.put("count",count);
		//将list放入map中
		map.put("data", list);
		return map;
	}
	
	/**
	 * 采购订单的商品库存是否充足
	 * @param purId 采购id
	 * @param auState 审核状态
	 * @param auIdea 审核意见
	 * @param purSum 采购总金额
	 * @param braId 分公司id
	 * @param session 获取session的值
	 * @return 0失败 ，1成功 ，2哪些商品不足
	 */
	@RequestMapping("findByinventory")
	@ResponseBody
	public Message findByinventory(String purId,Integer auState,String auIdea,Integer purSum,String braId,HttpSession session) {
		System.err.println("态度"+auState);
		SnUser user = (SnUser) session.getAttribute("user");
		String str=scs.findByinventory(purId,auState,auIdea,purSum,braId,user);
		Message mage=new Message();
		if("0".equals(str)) {
			mage.setState(0);
		}else if("1".equals(str)) {
			mage.setState(1);
		}else{
			mage.setState(2);
			mage.setMsg(str);
		}
		return mage;
	}
	
	/**
	 * 总公司经理审核
	 * @param purId 采购id
	 * @param auState 审核状态
	 * @param auIdea 审核意见
	 * @param purSum 采购总金额
	 * @param braId 分公司id
	 * @param session 获取session的值
	 * @return 获取session的值
	 */
	@RequestMapping("findByinventoryAndFinance")
	@ResponseBody
	public int findByinventoryAndFinance(String purId,Integer auState,String auIdea,Integer purSum,String braId,HttpSession session) {
		SnUser user = (SnUser) session.getAttribute("user");
		return scs.findByinventoryAndFinance(purId,auState,auIdea,purSum,braId,user);
	}
	/**
	 * 查询分公司
	 * @return 分公司集合
	 */
	@RequestMapping("selectAllBranch")
	@ResponseBody
	public List<SnBranch> selectAllBranch(){
		return scs.selectAllBranch();
	}
}
